![Transit Gateway가 뭐야? Transit Gateway에 대해 알아보자!](https://devio2023-media.developers.io/wp-content/uploads/2019/05/aws-transit-gateway.png)
Transit Gateway가 뭐야? Transit Gateway에 대해 알아보자!
안녕하세요 클래스메소드 김재욱(Kim Jaewook) 입니다. 이번에는「Transit Gateway가 뭐야? Transit Gateway에 대해 알아보자!」라는 주제로 Transit Gateway에 대해 정리해 봤습니다.
Transit Gateway란?
Transit Gateway는 가상 사설 클라우드(VPC)와 온프레미스 네트워크를 상호 연결하는 데 사용할 수 있는 네트워크 전송 허브입니다.
VPC와 VPC를 연결할 수 있기 때문에 어떻게 보면 VPC Peering과 비슷한 느낌을 줍니다.
소수의 VPC가 아닌 다수의 VPC를 연결하면 다음과 같이 복잡한 형태가 되어버립니다.
이럴 경우 Transit Gateway를 활용한다면 보다 수월하게 VPC와 라우팅들을 관리할 수 있습니다.
Transit Gateway와 VPC Peering에 대한 보다 자세한 내용은 아래 블로그를 참고해 주세요.
Transit Gateway로 VPC 연결해 보기
그렇다면 실제로 Transit Gateway를 활용해서 VPC를 연결해 보고 접속 테스트를 해보도록 하겠습니다.
먼저 2개의 VPC를 생성하고, 하나의 VPC에는 Public Subnet에 EC2 인스턴스를 생성했고, 다른 하나의 VPC에는 Private Subnet에 EC2 인스턴스를 생성했습니다. (기본적으로 Private Subnet에 있는 EC2 인스턴스 같은 경우에는 외부에서 접속할 수 없지만, 같은 VPC내에서는 인스턴스에 접속할 수 있기 때문에 Public Subnet과 Private Subnet에 EC2 인스턴스를 생성했습니다.)
- test-1-vpc : 10.0.0.0/16
- test-2-vpc : 10.10.0.0/16
VPC에서 Transit Gateway로 들어와서「Transit Gateway」생성 버튼을 클릭합니다.
이번에는 별 다른 설정없이 2개의 VPC만을 연결할 생각이기 때문에 이름 태그만 입력하고 Transit Gateway 생성을 끝마칩니다.
여기서 ASN(자율 시스템 번호)는 아래와 같습니다.
동일한 라우팅 정책으로 하나의 관리자에 의하여 운영되는 네트워크(즉 한 회사나 단체에서 관리하는 라우터 집단)를 자율 시스템(AS, Autonomous System)이라고 한다. 이 때 자율 시스템을 식별하기 위한 인터넷 상의 고유한 숫자를 망 식별번호(AS 번호)라고 한다.
이어서 Transit Gateway Attachment에서 Transit Gateway Attachment 생성으로 들어옵니다.
Transit Gateway ID를 클릭해서 조금 전 생성한 Transit Gateway를 선택합니다.
VPC ID에는 테스트용으로 만들어둔 2개의 VPC를 선택합니다.
(한 번에 하나 밖에 선택이 안되기 때문에 Transit Gateway Attachment를 2개 생성합니다.)
Transit Gateway 라우팅 테이블을 확인해 보면 조금 전 생성한 2개의 Transit Gateway Attachment를 확인할 수 있습니다.
이어서 Public Subnet에 생성한 EC2 인스턴스에 대한 라우팅입니다.
Transit Gateway를 선택하고, 대상을 test-2-vpc의 CIDR을 입력합니다.
이제 Private Subnet의 라우팅 테이블로 들어가서 test-1-vpc의 CIDR을 입력합니다.
접속 테스트
$ vi ~/.ssh/config Host ec2-test-1 HostName public ec2 ip port 22 User ec2-user IdentityFile keypair 경로 Host ec2-test-2 HostName private ec2 ip port 22 User ec2-user IdentityFile keypair 경로 proxyCommand ssh ec2-test-1 -W %h:%p
다음과 같이 ec2-test-1을 통해서 ec2-test-2에 접속할 수 있도록 ssh를 설정합니다.
(ec2-test-1이 Public Subnet, ec2-test-2가 Private Subnet에 생성한 EC2 인스턴스입니다.)
자세한 내용은 아래 블로그를 참고해 주세요.
ssh ec2-test-2 커맨드로 접속해 보면 성공적으로 ec2-test-2에 접속한 것을 확인할 수 있습니다.
ec2-test-1에서 ec2-test-2로 ping을 날려보면 문제 없이 핑이 날아가는 것을 확인할 수 있습니다.
본 블로그 게시글을 읽고 궁금한 사항이 있으신 분들은 jaewookkim533@yahoo.com로 보내주시면 감사하겠습니다.